Ein Feld mit dem Wert NULL ist ein Feld ohne Wert.
Wenn ein Feld in einer Tabelle optional ist, können Sie einen neuen Datensatz einfügen oder einen Datensatz aktualisieren, ohne diesem Feld einen Wert hinzuzufügen. Dann wird das Feld mit dem Wert NULL gespeichert.
Der Wert von NULL kann nicht mit Vergleichsoperatoren wie =, < oder <> überprüft werden.
Stattdessen müssen wir die Operatoren IS NULL und IS NOT NULL verwenden.
SELECT column_names
FROM table_name
WHERE column_name IS NULL
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL
Das Folgende ist ein Beispiel aus der Tabelle „Customers“ („Kunden“) der Datenbank „Northwind“:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
Der Operator IS NULL wird zum Testen auf Nullwerte (NULL-Werte) verwendet.
Die folgende SQL-Abfrage listet alle Kunden mit dem Wert NULL im Feld „Address“ auf:
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NULL
Der Operator IS NOT NULL wird verwendet, um nach nicht leeren Werten zu suchen (NOT NULL Werte).
Die folgende SQL-Abfrage listet alle Kunden mit einem Wert im Feld „Address“ auf:
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NOT NULL